Verification of Protocols Using Presburger Array Theory
نویسنده
چکیده
One of the verification methods of programs is to show certain predicates about program variables to be invariant. In general, it is undecidable whether or not a given predicate is invariant. In this paper, a class of concurrent program systems which include array variables is introduced, and a class of predicates about program variables is defined. The invariance problem for a predicate in the class is still undecidable. But it is shown that it is decidable whether or not a given predicate in the class satisfies a certain condition which is a sufficient one for the predicate to be,invariant. An abstract protocol which is an example of the concurrent program systems is described, and it is formally shown that some predicates which assert properties of the abstract protocol are invariant.
منابع مشابه
What's Decidable About Arrays?
Motivated by applications to program verification, we study a decision procedure for satisfiability in an expressive fragment of a theory of arrays, which is parameterized by the theories of the array elements. The decision procedure reduces satisfiability of a formula of the fragment to satisfiability of an equisatisfiable quantifier-free formula in the combined theory of equality with uninter...
متن کاملTransforming Coloured Petri Nets to Counter Systems for Parametric Verification: A Stop-and-Wait Protocol Case Study
Protocols may contain parameters that are chosen from a wide range. In some cases we would like our analysis results to apply to an arbitrary upper limit on a parameter value, such as the maximum number of retransmissions. In this case we have an infinite family of finite state systems. This makes their verification difficult. However, techniques and tools are being developed for the verificati...
متن کاملDeciding Extensions of the Theory of Arrays by Integrating Decision Procedures and Instantiation Strategies
The theory of arrays, introduced by McCarthy in his seminal paper “Toward a mathematical science of computation”, is central to Computer Science. Unfortunately, the theory alone is not sufficient for many important verification applications such as program analysis. Motivated by this observation, we study extensions of the theory of arrays whose satisfiability problem (i.e. checking the satisfi...
متن کاملDecision procedures for term algebras with integer constraints
Term algebras can model recursive data structures which are widely used in programming languages. To verify programs we must be able to reason about these structures. However, as programming languages often involve multiple data domains, in program verification decision procedures for a single theory are usually not applicable. An important class of mixed constraints consists of combinations of...
متن کاملA short introduction to two approaches in formal verification of security protocols: model checking and theorem proving
In this paper, we shortly review two formal approaches in verification of security protocols; model checking and theorem proving. Model checking is based on studying the behavior of protocols via generating all different behaviors of a protocol and checking whether the desired goals are satisfied in all instances or not. We investigate Scyther operational semantics as n example of this...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2010